#include "defines.hpp"

Menu::Menu()
{
    //ctor

}

void Menu::Teclas (int key, Cena & cena){

    if(key == GLUT_KEY_F1){
	    cena.setAtivo(true);
	}

     glutPostRedisplay();
}


void Menu::Renderiza()
{
    glClear(GL_COLOR_BUFFER_BIT| GL_DEPTH_BUFFER_BIT);
    glEnable(GL_DEPTH_TEST);
    glPushMatrix();

     GLfloat x = -100.f;
    GLfloat y = 80.f;
    GLfloat ystep = 100.0f;
    std::string titulo("Exemplo de como desenhar texto na tela com o GLUT.");
    std::string muda("Pressione F1 para alternar entre telas.");

    glRasterPos2f(x, y);
    Print_Bitmap_String(GLUT_BITMAP_HELVETICA_18, titulo);
    y-=ystep;
    glRasterPos2f(x, y);
    Print_Bitmap_String(GLUT_BITMAP_HELVETICA_18, muda);


   glPopMatrix();
   glutSwapBuffers();
}


void Menu::Print_Bitmap_String(void * font, std::string cont){
      char * cstr;
      int tamanho = 0;
      size_t size = cont.length();
      for (tamanho=0;tamanho<(int)size;tamanho++)
      {
        cstr = &cont[tamanho];
        glutBitmapCharacter(font, *cstr);}

}

Menu::~Menu()
{
    //dtor
}
